Superlinear Speedup by Program Transformation ( Extended Abstract ) Neil

نویسندگان

  • Neil D. Jones
  • G. W. Hamilton
چکیده

There seems to be, at least in practice, a fundamental conflict within program transformations. One way: hand transformations can yield dramatic speedups, but seem to require human insight. They are thus are only suited to small programs and have not been successfully automated. On the other hand, there exist a number of well-known automatic program transformations; but these have been proven to give at most linear speedups. This work in progress addresses this apparent conflict, and concerns the principles and practice of superlinear program speedup. A disclaimer: we work in a simple sequential program context: no caches, parallelism, etc. Many interesting program transformations (by Burstall-Darlington, Bird, Pettorossi, and many others) have been published that give superlinear program speedups on some program examples. However, these techniques all seem to require a " Eureka step " where the transformer understands some essential property relevant to the problem being solved (e.g., associativity, commutativity, occurrence of repeated subproblems, etc.). Such transformations have proven to be very difficult to automate. On the other hand a number of fully automatic transformers exist , including: classical compiler optimisations, deforestation, partial evaluation and positive supercompilation. However these can be seen (and have been formally proven, e.g., by Jones for partial evaluation, and by Sørensen for positive supercompilation) only to yield linear time improvements. For example, a limit in automatic string pattern matching was for several years to achieve the speedup of the Knuth-Morris-Pratt algorithm. The KMP speedup is still linear though, although its

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Superlinear Speedup by Program Transformation (Extended Abstract) (meta 2012)

There seems to be, at least in practice, a fundamental conflict within program transformations. One way: hand transformations can yield dramatic speedups, but seem to require human insight. They are thus are only suited to small programs and have not been successfully automated. On the other hand, there exist a number of well-known automatic program transformations; but these have been proven t...

متن کامل

A Note on Parallel Algorithmic Speedup Bounds

A parallel program can be represented as a directed acyclic graph. An important performance bound is the time T∞ to execute the critical path through the graph. We show how this performance metric is related to Amdahl speedup and the degree of average parallelism. These bounds formally exclude superlinear performance.

متن کامل

Nonlinear Configurations for Superlinear Speedup by Supercompilation

It is a widely held belief that supercompilation like partial evaluation is only capable of linear-time program speedups. The purpose of this paper is to dispel this myth. We show that supercompilation is capable of superlinear speedups and demonstrate this with several examples. We analyze the transformation and identify the most-specific generalization (msg) as the source of the speedup. Base...

متن کامل

Program Speedup in a Heterogeneous Computing Network

Program speedup is an important measure of the performance of an algorithm on a parallel machine. Of particular importance is the near linear or superlinear speedup exhibited by the most performance-eecient algorithms for a given system. We describe network and program models for heterogeneous networks, deene notions of speedup and superlinear speedup, and observe that speedup consists of both ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012